package com.flute.haflute.jobbox.base;

import java.rmi.Remote;
import java.rmi.RemoteException;

import com.flute.haflute.client.TransferredFiles;

/**
 * 提交任务的接口，所有任务提交的入口实现该接口
 * 
 * @see JobClient等
 */
public interface JobSubmitter extends Remote {

	/**
	 * 提交任务方法
	 * 
	 * @param jobConf
	 * @throws RemoteException
	 */
	public void submit(JobConf jobConf, ClientJobListener listener)
			throws RemoteException;

	/**
	 * 进行文件传输
	 * 
	 * @param transferredFiles
	 *            需要传送的文件
	 * @return
	 * @throws RemoteException
	 */
	public void transferFiles(TransferredFiles transferredFiles)
			throws RemoteException;
}
